<?php
include_once "topo.php";
if(logado()){
    if($_SESSION["ci_user_nivel"] == 2){ header("location:index.php"); }
    $usuario = new despachante();
    
    if(valida::numero($_GET["id"])){
        $id = $_GET["id"];
        $usuario->carregar($id);
    }
    
    if($_POST["btn_salvar"] == "Salvar"){
        $erro = 0;
        
        if($id != '' || !$usuario->cadastrado($_POST["login"])){
            if(!$usuario->set_id_titulo($_POST["titulo"])){ $erro = 1; }
            if(!$usuario->set_nome($_POST["nome"])){ $erro = 1; echo "<script>alert('Campo NOME: Não utilize traços, barras, parênteses, ou qualquer tipo de caracter especial')</script>";}
            if(!$usuario->set_id_setor($_POST["setor"])){ $erro = 1; }
            if(!$usuario->set_login($_POST["login"])){ $erro = 1; echo "<script>alert('Campo LOGIN: Não utilize traços, barras, parênteses, ou qualquer tipo de caracter especial')</script>";}
            if(!$usuario->set_email($_POST["email"])){ $erro = 1; }
            if(!$usuario->set_nivel($_POST["nivel"])){ $erro = 1; }
            
            if($_POST["senha"] == '1'){
                if(!$usuario->set_senha(gera_senha())){ $erro = 1; }
            }
            
            if($erro == 0){
                $id_usuario = $usuario->salvar();
                
                if($id_usuario != '' && $_SESSION["ci_user_nivel"] == 1){
                    $sql = "delete from ci_rel_usuario where id > 0 and (usuario1 = '$id_usuario' or usuario1 = '$id_usuario')";

                    $db = new db(config::$driver);
                    $conexao = $db->conecta();
                    $db->query($sql, $conexao);
                    $db->close($conexao);

                    $i = 0;
                    while($_POST["usuario"][$i]){
                        if(valida::numero($_POST["usuario"][$i])){
                            $sql = "insert into ci_rel_usuario(usuario1, usuario2) values('$id_usuario', '".$_POST["usuario"][$i]."')";

                            $db = new db(config::$driver);
                            $conexao = $db->conecta();
                            $db->query($sql, $conexao);
                            $db->close($conexao);
                        }
                        $i++;
                    }
                }
                
                if($id != ''){
                    $log = new log('ci_despachante', $id_usuario, "O usuário ".$_SESSION["ci_user_login"]." alterou o registro");
                    $log->salvar();
                    unset($log);
                }else{
                    $log = new log('ci_despachante', $id_usuario, "O usuário ".$_SESSION["ci_user_login"]." criou o registro");
                    $log->salvar();
                    unset($log);
                }
                
                if($_POST["senha"] == '1'){
                    $email = $usuario->get_email();
                    $email_assunto = "Dados para o acesso ao Comunicação Interna Uningá";
                    $email_mensagem  = "Olá ".$usuario->get_nome()."\n\n";
                    $email_mensagem .= "Você está cadastrado no sistema de Comunicação interna da Uningá\n";
                    $email_mensagem .= "seu ID é: ".$usuario->get_id()."\n\n";
                    $email_mensagem .= "Login: ".$usuario->get_login()."\n\n";
                    $email_mensagem .= "Senha: ".$usuario->get_senha()."\n\n";
					$email_mensagem .= "Acesse o sistema de Comunicação Interna da Uningá:\nhttp://www.ca.uninga.br/ci/ \n\n";

                    if(!mail($email, utf8_decode($email_assunto), utf8_decode($email_mensagem), "From: protocolo@uninga.br") && $email != ''){
                        $log = new log('', '', "Não foi possível enviar e-mail para $email");
                        $log->salvar();
                        unset($log);
                        echo "<script>alert('Falha ao enviar o e-mail, tente enviar pessoalmente!');</script>";
                    }else{
                        $log = new log('', '', "E-mail enviado para $email");
                        $log->salvar();
                        unset($log);
                    }
                }
                header("location: usuario.php");
            }else{
                echo "
        <script>alert('Preencha todos os campos!')</script>";
            }
        }
    }
    
    if($id == ''){
        echo "
        <h3>Novo usuario</h3>
        ";
    }else{
        echo "
        <h3>Alterar usuario</h3>
        ";
    }
    ?>
        <form action="" method="post">
            <?php
            if($id != ''){
                echo "ID: ".$usuario->get_id()."<br><br>\n";
            }
            ?>
            Título<br>
            <select name="titulo">
                <option value=""> -- Selecione -- </option>
                <option <?php if($usuario->get_id_titulo() == 1){ echo "selected"; } ?> value="1">Diretor Geral</option>
                <option <?php if($usuario->get_id_titulo() == 2){ echo "selected"; } ?> value="2">Presidente Mantenedora</option>
                <option <?php if($usuario->get_id_titulo() == 3){ echo "selected"; } ?> value="3">Diretor</option>
                <option <?php if($usuario->get_id_titulo() == 4){ echo "selected"; } ?> value="4">Coordenador</option>
                <option <?php if($usuario->get_id_titulo() == 5){ echo "selected"; } ?> value="5">Professor</option>
                <option <?php if($usuario->get_id_titulo() == 6){ echo "selected"; } ?> value="6">Secretario</option>
                <option <?php if($usuario->get_id_titulo() == 7){ echo "selected"; } ?> value="7">Tecnico</option>
                <option <?php if($usuario->get_id_titulo() == 8){ echo "selected"; } ?> value="8">Auxiliar</option>
                <option <?php if($usuario->get_id_titulo() == 9){ echo "selected"; } ?> value="9">Colaborador</option>
            </select><br><br>
            Nome<br>
            <input type="text" name="nome" value="<?=$usuario->get_nome()?>"><br><br>
            E-Mail<br>
            <input type="email" name="email" value="<?=$usuario->get_email()?>"><br><br>
            Setor<br>
            <select name="setor">
                <option value="0"> -- Selecione um setor -- </option>
                <?php
                $sql = "select * from ci_setor";
                $db = new db(config::$driver);
                $conexao = $db->conecta();
                $result = $db->query($sql, $conexao);
                
                while($setor = $db->fetch_array($result)){
                    echo "
                <option value='".$setor["id"]."'";
                    if($usuario->get_id_setor() == $setor["id"]){ echo " selected"; }
                    echo ">".$setor["descricao"]."</option>
                    ";
                }
                ?>
            </select><br><br>
            Login<br>
            <input type="text" name="login" value="<?=$usuario->get_login()?>"><br><br>
            
            <input type="checkbox" name="senha" value="1" id="ch_senha">
            <label for="ch_senha" style="font-weight: normal;">Alterar e enviar senha por e-mail ao salvar</label><br><br>
            
            Nível<br>
            <select name="nivel">
                <option value="0"> -- Selecione um nível -- </option>
                <option value="1"<?php if($usuario->get_nivel() == 1){ echo " selected"; } ?>>Administrador</option>
                <option value="2"<?php if($usuario->get_nivel() == 2){ echo " selected"; } ?>>Usuário</option>
            </select><br><br>
            
            <?php
            if($_SESSION["ci_user_nivel"] == 1){
                echo "
            Com quem este usuário NÃO pode se relacionar?<br>";
            
                $sql = "select id, nome from ci_despachante";
                $db = new db(config::$driver);
                $conexao = $db->conecta();
                $result = $db->query($sql, $conexao);
                $db->close($conexao);

                while($usregra = $db->fetch_array($result)){
                    if($id != $usregra["id"]){
                        if($id != ''){
                            $sql_select = "select id from ci_rel_usuario where (usuario1 = '".$usregra["id"]."' and usuario2 = '$id') or (usuario1 = '$id' and usuario2 = '".$usregra["id"]."')";
                            $db1 = new db(config::$driver);
                            $con = $db1->conecta();
                            $res = $db1->query($sql_select, $con);
                            $db1->close($con);

                            $s = $db1->fetch_array($res);
                            $checked = '';
                            if($s[0] != ''){
                                $checked = "checked";
                            }
                        }else{
                            $checked = "";
                        }

                        ?>
                <input type="checkbox" name="usuario[]" value="<?=$usregra["id"]?>" id="usuario<?=$usregra["id"]?>" <?=$checked?>>
                <label for="usuario<?=$usregra["id"]?>"><?=$usregra["nome"]?></label><br>
                        <?php
                    }
                }
            }
            ?>
            <br><br>
            <button type="submit" name="btn_salvar" value="Salvar">Salvar</button>
        </form>
    <?php
    
    unset($usuario);
    
}else{
    header("location: login.php");
}
include_once "rodape.php";
?>
